package cn.edu.sjtu.se.dslab.dao;

import java.util.List;

import cn.edu.sjtu.se.dslab.action.bean.PageBean;
import cn.edu.sjtu.se.dslab.component.design.DesignPatternComponent;
import cn.edu.sjtu.se.dslab.exception.DBException;


/**
 * 
 * @author longshaohang
 *
 */
public interface IDesignPatternComponentDao {

	public void save(DesignPatternComponent dpComponent);
	
	public DesignPatternComponent update(DesignPatternComponent dpComponent);
	
	public DesignPatternComponent queryById(long id);
	
	public PageBean queryByPageNum(int pageNum) throws DBException;
	
	public List<DesignPatternComponent> queryByList();
	
	public List<DesignPatternComponent> queryListByDesignPattern(int pageNo, int pageSize, String uri);

	public DesignPatternComponent queryByUri(String uri);
	
	public List<DesignPatternComponent> queryListByProject(long projectId);
	
	public DesignPatternComponent queryByType(long projectId, String type);
}
